]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
dbus: Move all interface descriptions into the resource
authorFlorian Müllner <fmuellner@gnome.org>
Thu, 6 Sep 2018 00:55:20 +0000 (02:55 +0200)
committerJonas Ådahl <jadahl@gmail.com>
Mon, 17 Sep 2018 07:34:49 +0000 (07:34 +0000)
https://gitlab.gnome.org/GNOME/gnome-shell/issues/537

80 files changed:
data/dbus-interfaces/net.hadess.SensorProxy.xml [new file with mode: 0644]
data/dbus-interfaces/net.hadess.SwitcherooControl.xml [new file with mode: 0644]
data/dbus-interfaces/org.Gtk.MountOperationHandler.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.Application.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.DBus.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.GeoClue2.Agent.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.GeoClue2.Manager.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Cdma.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Gsm.Network.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.ModemCdma.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.Notifications.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.PackageKit.Offline.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.UPower.Device.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.UPower.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.bolt1.Device.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.bolt1.Manager.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.impl.portal.Access.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.impl.portal.PermissionStore.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.impl.portal.Request.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.login1.Manager.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.login1.Session.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.login1.User.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.realmd.Provider.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.realmd.Realm.xml [new file with mode: 0644]
data/dbus-interfaces/org.freedesktop.realmd.Service.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Magnifier.ZoomRegion.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Magnifier.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.ScreenSaver.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SessionManager.EndSessionDialog.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SessionManager.Inhibitor.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SessionManager.Presence.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SessionManager.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SettingsDaemon.Color.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SettingsDaemon.Power.Screen.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SettingsDaemon.Rfkill.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.SettingsDaemon.Wacom.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.AudioDeviceSelection.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.HotplugSniffer.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.PerfHelper.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.PortalHelper.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.Wacom.PadOsd.xml [new file with mode: 0644]
data/dbus-interfaces/org.gnome.Shell.xml [new file with mode: 0644]
data/dbus-interfaces/org.gtk.Notifications.xml [new file with mode: 0644]
data/dbus-interfaces/org.mpris.MediaPlayer2.Player.xml [new file with mode: 0644]
data/dbus-interfaces/org.mpris.MediaPlayer2.xml [new file with mode: 0644]
data/gnome-shell-dbus-interfaces.gresource.xml
js/extensionPrefs/main.js
js/gdm/realmd.js
js/misc/gnomeSession.js
js/misc/loginManager.js
js/misc/modemManager.js
js/misc/permissionStore.js
js/misc/systemActions.js
js/portal-resources.gresource.xml
js/portalHelper/main.js
js/ui/accessDialog.js
js/ui/appDisplay.js
js/ui/audioDeviceSelection.js
js/ui/components/autorunManager.js
js/ui/endSessionDialog.js
js/ui/magnifierDBus.js
js/ui/mpris.js
js/ui/notificationDaemon.js
js/ui/padOsd.js
js/ui/screencast.js
js/ui/screenshot.js
js/ui/scripting.js
js/ui/shellDBus.js
js/ui/shellMountOperation.js
js/ui/status/bluetooth.js
js/ui/status/brightness.js
js/ui/status/location.js
js/ui/status/network.js
js/ui/status/nightLight.js
js/ui/status/power.js
js/ui/status/rfkill.js
js/ui/status/thunderbolt.js
js/ui/windowManager.js

diff --git a/data/dbus-interfaces/net.hadess.SensorProxy.xml b/data/dbus-interfaces/net.hadess.SensorProxy.xml
new file mode 100644 (file)
index 0000000..2bf8ffa
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="net.hadess.SensorProxy">
+    <property name="HasAccelerometer" type="b" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/net.hadess.SwitcherooControl.xml b/data/dbus-interfaces/net.hadess.SwitcherooControl.xml
new file mode 100644 (file)
index 0000000..792af08
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="net.hadess.SwitcherooControl">
+    <property name="HasDualGpu" type="b" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.Gtk.MountOperationHandler.xml b/data/dbus-interfaces/org.Gtk.MountOperationHandler.xml
new file mode 100644 (file)
index 0000000..8b03a2e
--- /dev/null
@@ -0,0 +1,32 @@
+<node>
+  <interface name="org.Gtk.MountOperationHandler">
+    <method name="AskPassword">
+      <arg type="s" direction="in" name="object_id"/>
+      <arg type="s" direction="in" name="message"/>
+      <arg type="s" direction="in" name="icon_name"/>
+      <arg type="s" direction="in" name="default_user"/>
+      <arg type="s" direction="in" name="default_domain"/>
+      <arg type="u" direction="in" name="flags"/>
+      <arg type="u" direction="out" name="response"/>
+      <arg type="a{sv}" direction="out" name="response_details"/>
+    </method>
+    <method name="AskQuestion">
+      <arg type="s" direction="in" name="object_id"/>
+      <arg type="s" direction="in" name="message"/>
+      <arg type="s" direction="in" name="icon_name"/>
+      <arg type="as" direction="in" name="choices"/>
+      <arg type="u" direction="out" name="response"/>
+      <arg type="a{sv}" direction="out" name="response_details"/>
+    </method>
+    <method name="ShowProcesses">
+      <arg type="s" direction="in" name="object_id"/>
+      <arg type="s" direction="in" name="message"/>
+      <arg type="s" direction="in" name="icon_name"/>
+      <arg type="ai" direction="in" name="application_pids"/>
+      <arg type="as" direction="in" name="choices"/>
+      <arg type="u" direction="out" name="response"/>
+      <arg type="a{sv}" direction="out" name="response_details"/>
+    </method>
+    <method name="Close"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.Application.xml b/data/dbus-interfaces/org.freedesktop.Application.xml
new file mode 100644 (file)
index 0000000..55be7d7
--- /dev/null
@@ -0,0 +1,12 @@
+<node>
+  <interface name="org.freedesktop.Application">
+    <method name="ActivateAction">
+      <arg type="s" direction="in"/>
+      <arg type="av" direction="in"/>
+      <arg type="a{sv}" direction="in"/>
+    </method>
+    <method name="Activate">
+      <arg type="a{sv}" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.DBus.xml b/data/dbus-interfaces/org.freedesktop.DBus.xml
new file mode 100644 (file)
index 0000000..18ff2aa
--- /dev/null
@@ -0,0 +1,16 @@
+<node>
+  <interface name="org.freedesktop.DBus">
+    <method name="ListNames">
+      <arg type="as" direction="out" name="names"/>
+    </method>
+    <method name="GetConnectionUnixProcessID">
+      <arg type="s" direction="in"/>
+      <arg type="u" direction="out"/>
+    </method>
+    <signal name="NameOwnerChanged">
+      <arg type="s" direction="out" name="name"/>
+      <arg type="s" direction="out" name="oldOwner"/>
+      <arg type="s" direction="out" name="newOwner"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.GeoClue2.Agent.xml b/data/dbus-interfaces/org.freedesktop.GeoClue2.Agent.xml
new file mode 100644 (file)
index 0000000..2773601
--- /dev/null
@@ -0,0 +1,11 @@
+<node>
+  <interface name="org.freedesktop.GeoClue2.Agent">
+    <property name="MaxAccuracyLevel" type="u" access="read"/>
+    <method name="AuthorizeApp">
+      <arg name="desktop_id" type="s" direction="in"/>
+      <arg name="req_accuracy_level" type="u" direction="in"/>
+      <arg name="authorized" type="b" direction="out"/>
+      <arg name="allowed_accuracy_level" type="u" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.GeoClue2.Manager.xml b/data/dbus-interfaces/org.freedesktop.GeoClue2.Manager.xml
new file mode 100644 (file)
index 0000000..28db3c6
--- /dev/null
@@ -0,0 +1,9 @@
+<node>
+  <interface name="org.freedesktop.GeoClue2.Manager">
+    <property name="InUse" type="b" access="read"/>
+    <property name="AvailableAccuracyLevel" type="u" access="read"/>
+    <method name="AddAgent">
+      <arg name="id" type="s" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Cdma.xml b/data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Cdma.xml
new file mode 100644 (file)
index 0000000..12a85e0
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+  <interface name="org.freedesktop.ModemManager.Modem.Cdma">
+    <method name="GetSignalQuality">
+      <arg type="u" direction="out"/>
+    </method>
+    <method name="GetServingSystem">
+      <arg type="(usu)" direction="out"/>
+    </method>
+    <signal name="SignalQuality">
+      <arg type="u" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Gsm.Network.xml b/data/dbus-interfaces/org.freedesktop.ModemManager.Modem.Gsm.Network.xml
new file mode 100644 (file)
index 0000000..7d8c25a
--- /dev/null
@@ -0,0 +1,19 @@
+<node>
+  <interface name="org.freedesktop.ModemManager.Modem.Gsm.Network">
+    <method name="GetRegistrationInfo">
+      <arg type="(uss)" direction="out"/>
+    </method>
+    <method name="GetSignalQuality">
+      <arg type="u" direction="out"/>
+    </method>
+    <property name="AccessTechnology" type="u" access="read"/>
+    <signal name="SignalQuality">
+      <arg type="u" direction="out"/>
+    </signal>
+    <signal name="RegistrationInfo">
+      <arg type="u" direction="out"/>
+      <arg type="s" direction="out"/>
+      <arg type="s" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml b/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.Modem3gpp.xml
new file mode 100644 (file)
index 0000000..41e6601
--- /dev/null
@@ -0,0 +1,6 @@
+<node>
+  <interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp">
+    <property name="OperatorCode" type="s" access="read"/>
+    <property name="OperatorName" type="s" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.ModemCdma.xml b/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.ModemCdma.xml
new file mode 100644 (file)
index 0000000..d029252
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="org.freedesktop.ModemManager1.Modem.ModemCdma">
+    <property name="Sid" type="u" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.xml b/data/dbus-interfaces/org.freedesktop.ModemManager1.Modem.xml
new file mode 100644 (file)
index 0000000..204426b
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="org.freedesktop.ModemManager1.Modem">
+    <property name="SignalQuality" type="(ub)" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.Notifications.xml b/data/dbus-interfaces/org.freedesktop.Notifications.xml
new file mode 100644 (file)
index 0000000..0ed8657
--- /dev/null
@@ -0,0 +1,35 @@
+<node>
+  <interface name="org.freedesktop.Notifications">
+    <method name="Notify">
+      <arg type="s" direction="in"/>
+      <arg type="u" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="as" direction="in"/>
+      <arg type="a{sv}" direction="in"/>
+      <arg type="i" direction="in"/>
+      <arg type="u" direction="out"/>
+    </method>
+    <method name="CloseNotification">
+      <arg type="u" direction="in"/>
+    </method>
+    <method name="GetCapabilities">
+      <arg type="as" direction="out"/>
+    </method>
+    <method name="GetServerInformation">
+      <arg type="s" direction="out"/>
+      <arg type="s" direction="out"/>
+      <arg type="s" direction="out"/>
+      <arg type="s" direction="out"/>
+    </method>
+    <signal name="NotificationClosed">
+      <arg type="u"/>
+      <arg type="u"/>
+    </signal>
+    <signal name="ActionInvoked">
+      <arg type="u"/>
+      <arg type="s"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.PackageKit.Offline.xml b/data/dbus-interfaces/org.freedesktop.PackageKit.Offline.xml
new file mode 100644 (file)
index 0000000..ff61166
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+  <interface name="org.freedesktop.PackageKit.Offline">
+    <property name="UpdatePrepared" type="b" access="read"/>
+    <property name="UpdateTriggered" type="b" access="read"/>
+    <property name="UpgradePrepared" type="b" access="read"/>
+    <property name="UpgradeTriggered" type="b" access="read"/>
+    <property name="PreparedUpgrade" type="a{sv}" access="read"/>
+    <method name="Trigger">
+      <arg type="s" name="action" direction="in"/>
+    </method>
+    <method name="Cancel"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.UPower.Device.xml b/data/dbus-interfaces/org.freedesktop.UPower.Device.xml
new file mode 100644 (file)
index 0000000..4882285
--- /dev/null
@@ -0,0 +1,11 @@
+<node>
+  <interface name="org.freedesktop.UPower.Device">
+    <property name="Type" type="u" access="read"/>
+    <property name="State" type="u" access="read"/>
+    <property name="Percentage" type="d" access="read"/>
+    <property name="TimeToEmpty" type="x" access="read"/>
+    <property name="TimeToFull" type="x" access="read"/>
+    <property name="IsPresent" type="b" access="read"/>
+    <property name="IconName" type="s" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.UPower.xml b/data/dbus-interfaces/org.freedesktop.UPower.xml
new file mode 100644 (file)
index 0000000..a0fba20
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="org.freedesktop.UPower">
+    <property name="OnBattery" type="b" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.bolt1.Device.xml b/data/dbus-interfaces/org.freedesktop.bolt1.Device.xml
new file mode 100644 (file)
index 0000000..44b40dc
--- /dev/null
@@ -0,0 +1,18 @@
+<node>
+  <interface name="org.freedesktop.bolt1.Device">
+    <property name="Uid" type="s" access="read"></property>
+    <property name="Name" type="s" access="read"></property>
+    <property name="Vendor" type="s" access="read"></property>
+    <property name="Type" type="s" access="read"></property>
+    <property name="Status" type="s" access="read"></property>
+    <property name="Parent" type="s" access="read"></property>
+    <property name="SysfsPath" type="s" access="read"></property>
+    <property name="Stored" type="b" access="read"></property>
+    <property name="Policy" type="s" access="read"></property>
+    <property name="Key" type="s" access="read"></property>
+    <property name="Label" type="s" access="read"></property>
+    <property name="ConnectTime" type="t" access="read"></property>
+    <property name="AuthorizeTime" type="t" access="read"></property>
+    <property name="StoreTime" type="t" access="read"></property>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.bolt1.Manager.xml b/data/dbus-interfaces/org.freedesktop.bolt1.Manager.xml
new file mode 100644 (file)
index 0000000..c98a94f
--- /dev/null
@@ -0,0 +1,15 @@
+<node>
+  <interface name="org.freedesktop.bolt1.Manager">
+    <property name="Probing" type="b" access="read"></property>
+    <property name="AuthMode" type="s" access="readwrite"></property>
+    <method name="EnrollDevice">
+      <arg type="s" name="uid" direction="in"/>
+      <arg type="s" name="policy" direction="in"/>
+      <arg type="s" name="flags" direction="in"/>
+      <arg name="device" direction="out" type="o"/>
+    </method>
+    <signal name="DeviceAdded">
+      <arg name="device" type="o"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.impl.portal.Access.xml b/data/dbus-interfaces/org.freedesktop.impl.portal.Access.xml
new file mode 100644 (file)
index 0000000..802a2c1
--- /dev/null
@@ -0,0 +1,15 @@
+<node>
+  <interface name="org.freedesktop.impl.portal.Access">
+    <method name="AccessDialog">
+      <arg type="o" name="handle" direction="in"/>
+      <arg type="s" name="app_id" direction="in"/>
+      <arg type="s" name="parent_window" direction="in"/>
+      <arg type="s" name="title" direction="in"/>
+      <arg type="s" name="subtitle" direction="in"/>
+      <arg type="s" name="body" direction="in"/>
+      <arg type="a{sv}" name="options" direction="in"/>
+      <arg type="u" name="response" direction="out"/>
+      <arg type="a{sv}" name="results" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.impl.portal.PermissionStore.xml b/data/dbus-interfaces/org.freedesktop.impl.portal.PermissionStore.xml
new file mode 100644 (file)
index 0000000..75fbc46
--- /dev/null
@@ -0,0 +1,24 @@
+<node>
+  <interface name="org.freedesktop.impl.portal.PermissionStore">
+    <method name="Lookup">
+      <arg name="table" type="s" direction="in"/>
+      <arg name="id" type="s" direction="in"/>
+      <arg name="permissions" type="a{sas}" direction="out"/>
+      <arg name="data" type="v" direction="out"/>
+    </method>
+    <method name="Set">
+      <arg name="table" type="s" direction="in"/>
+      <arg name="create" type="b" direction="in"/>
+      <arg name="id" type="s" direction="in"/>
+      <arg name="app_permissions" type="a{sas}" direction="in"/>
+      <arg name="data" type="v" direction="in"/>
+    </method>
+    <signal name="Changed">
+      <arg name="table" type="s" direction="out"/>
+      <arg name="id" type="s" direction="out"/>
+      <arg name="deleted" type="b" direction="out"/>
+      <arg name="data" type="v" direction="out"/>
+      <arg name="permissions" type="a{sas}" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.impl.portal.Request.xml b/data/dbus-interfaces/org.freedesktop.impl.portal.Request.xml
new file mode 100644 (file)
index 0000000..a9d03eb
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="org.freedesktop.impl.portal.Request">
+    <method name="Close"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.login1.Manager.xml b/data/dbus-interfaces/org.freedesktop.login1.Manager.xml
new file mode 100644 (file)
index 0000000..647afc6
--- /dev/null
@@ -0,0 +1,27 @@
+<node>
+  <interface name="org.freedesktop.login1.Manager">
+    <method name="Suspend">
+      <arg type="b" direction="in"/>
+    </method>
+    <method name="CanSuspend">
+      <arg type="s" direction="out"/>
+    </method>
+    <method name="Inhibit">
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="h" direction="out"/>
+    </method>
+    <method name="GetSession">
+      <arg type="s" direction="in"/>
+      <arg type="o" direction="out"/>
+    </method>
+    <method name="ListSessions">
+      <arg name="sessions" type="a(susso)" direction="out"/>
+    </method>
+    <signal name="PrepareForSleep">
+      <arg type="b" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.login1.Session.xml b/data/dbus-interfaces/org.freedesktop.login1.Session.xml
new file mode 100644 (file)
index 0000000..6fab817
--- /dev/null
@@ -0,0 +1,15 @@
+<node>
+  <interface name="org.freedesktop.login1.Session">
+    <signal name="Lock"/>
+    <signal name="Unlock"/>
+    <property name="Active" type="b" access="read"/>
+    <property name="Class" type="s" access="read"/>
+    <property name="Id" type="s" access="read"/>
+    <property name="Remote" type="b" access="read"/>
+    <property name="Type" type="s" access="read"/>
+    <property name="State" type="s" access="read"/>
+    <method name="SetLockedHint">
+      <arg type="b" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.login1.User.xml b/data/dbus-interfaces/org.freedesktop.login1.User.xml
new file mode 100644 (file)
index 0000000..d6f10b0
--- /dev/null
@@ -0,0 +1,6 @@
+<node>
+  <interface name="org.freedesktop.login1.User">
+    <property name="Display" type="(so)" access="read"/>
+    <property name="Sessions" type="a(so)" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.realmd.Provider.xml b/data/dbus-interfaces/org.freedesktop.realmd.Provider.xml
new file mode 100644 (file)
index 0000000..2fdb045
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+  <interface name="org.freedesktop.realmd.Provider">
+    <property name="Name" type="s" access="read"/>
+    <property name="Version" type="s" access="read"/>
+    <property name="Realms" type="ao" access="read"/>
+    <method name="Discover">
+      <arg name="string" type="s" direction="in"/>
+      <arg name="options" type="a{sv}" direction="in"/>
+      <arg name="relevance" type="i" direction="out"/>
+      <arg name="realm" type="ao" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.realmd.Realm.xml b/data/dbus-interfaces/org.freedesktop.realmd.Realm.xml
new file mode 100644 (file)
index 0000000..351066d
--- /dev/null
@@ -0,0 +1,20 @@
+<node>
+  <interface name="org.freedesktop.realmd.Realm">
+    <property name="Name" type="s" access="read"/>
+    <property name="Configured" type="s" access="read"/>
+    <property name="Details" type="a(ss)" access="read"/>
+    <property name="LoginFormats" type="as" access="read"/>
+    <property name="LoginPolicy" type="s" access="read"/>
+    <property name="PermittedLogins" type="as" access="read"/>
+    <property name="SupportedInterfaces" type="as" access="read"/>
+    <method name="ChangeLoginPolicy">
+      <arg name="login_policy" type="s" direction="in"/>
+      <arg name="permitted_add" type="as" direction="in"/>
+      <arg name="permitted_remove" type="as" direction="in"/>
+      <arg name="options" type="a{sv}" direction="in"/>
+    </method>
+    <method name="Deconfigure">
+      <arg name="options" type="a{sv}" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.freedesktop.realmd.Service.xml b/data/dbus-interfaces/org.freedesktop.realmd.Service.xml
new file mode 100644 (file)
index 0000000..4ffb7e7
--- /dev/null
@@ -0,0 +1,15 @@
+<node>
+  <interface name="org.freedesktop.realmd.Service">
+    <method name="Cancel">
+      <arg name="operation" type="s" direction="in"/>
+    </method>
+    <method name="Release"/>
+    <method name="SetLocale">
+      <arg name="locale" type="s" direction="in"/>
+    </method>
+    <signal name="Diagnostics">
+      <arg name="data" type="s"/>
+      <arg name="operation" type="s"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Magnifier.ZoomRegion.xml b/data/dbus-interfaces/org.gnome.Magnifier.ZoomRegion.xml
new file mode 100644 (file)
index 0000000..5db2734
--- /dev/null
@@ -0,0 +1,26 @@
+<node>
+  <interface name="org.gnome.Magnifier.ZoomRegion">
+    <method name="setMagFactor">
+      <arg type="d" direction="in"/>
+      <arg type="d" direction="in"/>
+    </method>
+    <method name="getMagFactor">
+      <arg type="d" direction="out"/>
+      <arg type="d" direction="out"/>
+    </method>
+    <method name="setRoi">
+      <arg type="ai" direction="in"/>
+    </method>
+    <method name="getRoi">
+      <arg type="ai" direction="out"/>
+    </method>
+    <method name="shiftContentsTo">
+      <arg type="i" direction="in"/>
+      <arg type="i" direction="in"/>
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="moveResize">
+      <arg type="ai" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Magnifier.xml b/data/dbus-interfaces/org.gnome.Magnifier.xml
new file mode 100644 (file)
index 0000000..2ade4dd
--- /dev/null
@@ -0,0 +1,54 @@
+<node>
+  <interface name="org.gnome.Magnifier">
+    <method name="setActive">
+      <arg type="b" direction="in"/>
+    </method>
+    <method name="isActive">
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="showCursor"/>
+    <method name="hideCursor"/>
+    <method name="createZoomRegion">
+      <arg type="d" direction="in"/>
+      <arg type="d" direction="in"/>
+      <arg type="ai" direction="in"/>
+      <arg type="ai" direction="in"/>
+      <arg type="o" direction="out"/>
+    </method>
+    <method name="addZoomRegion">
+      <arg type="o" direction="in"/>
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="getZoomRegions">
+      <arg type="ao" direction="out"/>
+    </method>
+    <method name="clearAllZoomRegions"/>
+    <method name="fullScreenCapable">
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="setCrosswireSize">
+      <arg type="i" direction="in"/>
+    </method>
+    <method name="getCrosswireSize">
+      <arg type="i" direction="out"/>
+    </method>
+    <method name="setCrosswireLength">
+      <arg type="i" direction="in"/>
+    </method>
+    <method name="getCrosswireLength">
+      <arg type="i" direction="out"/>
+    </method>
+    <method name="setCrosswireClip">
+      <arg type="b" direction="in"/>
+    </method>
+    <method name="getCrosswireClip">
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="setCrosswireColor">
+      <arg type="u" direction="in"/>
+    </method>
+    <method name="getCrosswireColor">
+      <arg type="u" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.ScreenSaver.xml b/data/dbus-interfaces/org.gnome.ScreenSaver.xml
new file mode 100644 (file)
index 0000000..5a2ca98
--- /dev/null
@@ -0,0 +1,18 @@
+<node>
+  <interface name="org.gnome.ScreenSaver">
+    <method name="Lock"/>
+    <method name="GetActive">
+      <arg type="b" direction="out" name="active"/>
+    </method>
+    <method name="SetActive">
+      <arg type="b" direction="in" name="value"/>
+    </method>
+    <method name="GetActiveTime">
+      <arg type="u" direction="out" name="value"/>
+    </method>
+    <signal name="ActiveChanged">
+      <arg name="new_value" type="b"/>
+    </signal>
+    <signal name="WakeUpScreen"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SessionManager.EndSessionDialog.xml b/data/dbus-interfaces/org.gnome.SessionManager.EndSessionDialog.xml
new file mode 100644 (file)
index 0000000..3a57aa4
--- /dev/null
@@ -0,0 +1,16 @@
+<node>
+  <interface name="org.gnome.SessionManager.EndSessionDialog">
+    <method name="Open">
+      <arg type="u" direction="in"/>
+      <arg type="u" direction="in"/>
+      <arg type="u" direction="in"/>
+      <arg type="ao" direction="in"/>
+    </method>
+    <method name="Close"/>
+    <signal name="ConfirmedLogout"/>
+    <signal name="ConfirmedReboot"/>
+    <signal name="ConfirmedShutdown"/>
+    <signal name="Canceled"/>
+    <signal name="Closed"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SessionManager.Inhibitor.xml b/data/dbus-interfaces/org.gnome.SessionManager.Inhibitor.xml
new file mode 100644 (file)
index 0000000..c745f81
--- /dev/null
@@ -0,0 +1,10 @@
+<node>
+  <interface name="org.gnome.SessionManager.Inhibitor">
+    <method name="GetAppId">
+      <arg type="s" direction="out"/>
+    </method>
+    <method name="GetReason">
+      <arg type="s" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SessionManager.Presence.xml b/data/dbus-interfaces/org.gnome.SessionManager.Presence.xml
new file mode 100644 (file)
index 0000000..78bc604
--- /dev/null
@@ -0,0 +1,11 @@
+<node>
+  <interface name="org.gnome.SessionManager.Presence">
+    <method name="SetStatus">
+      <arg type="u" direction="in"/>
+    </method>
+    <property name="status" type="u" access="readwrite"/>
+    <signal name="StatusChanged">
+      <arg type="u" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SessionManager.xml b/data/dbus-interfaces/org.gnome.SessionManager.xml
new file mode 100644 (file)
index 0000000..c81c90f
--- /dev/null
@@ -0,0 +1,23 @@
+<node>
+  <interface name="org.gnome.SessionManager">
+    <method name="Logout">
+      <arg type="u" direction="in"/>
+    </method>
+    <method name="Shutdown"/>
+    <method name="Reboot"/>
+    <method name="CanShutdown">
+      <arg type="b" direction="out"/>
+    </method>
+    <method name="IsInhibited">
+      <arg type="u" direction="in"/>
+      <arg type="b" direction="out"/>
+    </method>
+    <property name="SessionIsActive" type="b" access="read"/>
+    <signal name="InhibitorAdded">
+      <arg type="o" direction="out"/>
+    </signal>
+    <signal name="InhibitorRemoved">
+      <arg type="o" direction="out"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SettingsDaemon.Color.xml b/data/dbus-interfaces/org.gnome.SettingsDaemon.Color.xml
new file mode 100644 (file)
index 0000000..1528f90
--- /dev/null
@@ -0,0 +1,6 @@
+<node>
+  <interface name="org.gnome.SettingsDaemon.Color">
+    <property name="DisabledUntilTomorrow" type="b" access="readwrite"/>
+    <property name="NightLightActive" type="b" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SettingsDaemon.Power.Screen.xml b/data/dbus-interfaces/org.gnome.SettingsDaemon.Power.Screen.xml
new file mode 100644 (file)
index 0000000..05e4b8d
--- /dev/null
@@ -0,0 +1,5 @@
+<node>
+  <interface name="org.gnome.SettingsDaemon.Power.Screen">
+    <property name="Brightness" type="i" access="readwrite"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SettingsDaemon.Rfkill.xml b/data/dbus-interfaces/org.gnome.SettingsDaemon.Rfkill.xml
new file mode 100644 (file)
index 0000000..628b17f
--- /dev/null
@@ -0,0 +1,10 @@
+<node>
+  <interface name="org.gnome.SettingsDaemon.Rfkill">
+    <property name="AirplaneMode" type="b" access="readwrite"/>
+    <property name="HardwareAirplaneMode" type="b" access="read"/>
+    <property name="BluetoothAirplaneMode" type="b" access="readwrite"/>
+    <property name="BluetoothHasAirplaneMode" type="b" access="read"/>
+    <property name="BluetoothHardwareAirplaneMode" type="b" access="readwrite"/>
+    <property name="ShouldShowAirplaneMode" type="b" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.SettingsDaemon.Wacom.xml b/data/dbus-interfaces/org.gnome.SettingsDaemon.Wacom.xml
new file mode 100644 (file)
index 0000000..1370214
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+<interface name="org.gnome.SettingsDaemon.Wacom">
+  <method name="SetGroupModeLED">
+    <arg name="device_path" direction="in" type="s"/>
+    <arg name="group" direction="in" type="u"/>
+    <arg name="mode" direction="in" type="u"/>
+  </method>
+  <method name="SetOLEDLabels">
+    <arg name="device_path" direction="in" type="s"/>
+    <arg name="labels" direction="in" type="as"/>
+  </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.AudioDeviceSelection.xml b/data/dbus-interfaces/org.gnome.Shell.AudioDeviceSelection.xml
new file mode 100644 (file)
index 0000000..28cc6da
--- /dev/null
@@ -0,0 +1,12 @@
+<node>
+  <interface name="org.gnome.Shell.AudioDeviceSelection">
+    <method name="Open">
+      <arg name="devices" direction="in" type="as"/>
+    </method>
+    <method name="Close">
+    </method>
+    <signal name="DeviceSelected">
+      <arg name="device" type="s"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.HotplugSniffer.xml b/data/dbus-interfaces/org.gnome.Shell.HotplugSniffer.xml
new file mode 100644 (file)
index 0000000..b4373cc
--- /dev/null
@@ -0,0 +1,8 @@
+<node>
+  <interface name="org.gnome.Shell.HotplugSniffer">
+    <method name="SniffURI">
+      <arg type="s" direction="in"/>
+      <arg type="as" direction="out"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.PerfHelper.xml b/data/dbus-interfaces/org.gnome.Shell.PerfHelper.xml
new file mode 100644 (file)
index 0000000..98fea27
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+  <interface name="org.gnome.Shell.PerfHelper">
+    <method name="CreateWindow">
+      <arg type="i" direction="in"/>
+      <arg type="i" direction="in"/>
+      <arg type="b" direction="in"/>
+      <arg type="b" direction="in"/>
+      <arg type="b" direction="in"/>
+    </method>
+    <method name="WaitWindows"/>
+    <method name="DestroyWindows"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.PortalHelper.xml b/data/dbus-interfaces/org.gnome.Shell.PortalHelper.xml
new file mode 100644 (file)
index 0000000..8c6a13e
--- /dev/null
@@ -0,0 +1,19 @@
+<node>
+  <interface name="org.gnome.Shell.PortalHelper">
+    <method name="Authenticate">
+      <arg name="connection" type="o" direction="in"/>
+      <arg name="url" type="s" direction="in"/>
+      <arg name="timestamp" type="u" direction="in"/>
+    </method>
+    <method name="Close">
+      <arg name="connection" type="o" direction="in"/>
+    </method>
+    <method name="Refresh">
+      <arg name="connection" type="o" direction="in"/>
+    </method>
+    <signal name="Done">
+      <arg type="o" name="connection"/>
+      <arg type="u" name="result"/>
+    </signal>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.Wacom.PadOsd.xml b/data/dbus-interfaces/org.gnome.Shell.Wacom.PadOsd.xml
new file mode 100644 (file)
index 0000000..5e046c7
--- /dev/null
@@ -0,0 +1,8 @@
+<node>
+  <interface name="org.gnome.Shell.Wacom.PadOsd">
+    <method name="Show">
+      <arg name="device_node" direction="in" type="o"/>
+      <arg name="edition_mode" direction="in" type="b"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gnome.Shell.xml b/data/dbus-interfaces/org.gnome.Shell.xml
new file mode 100644 (file)
index 0000000..233c5e1
--- /dev/null
@@ -0,0 +1,44 @@
+<node>
+  <interface name="org.gnome.Shell">
+    <method name="Eval">
+      <arg type="s" direction="in" name="script"/>
+      <arg type="b" direction="out" name="success"/>
+      <arg type="s" direction="out" name="result"/>
+    </method>
+    <method name="FocusSearch"/>
+    <method name="ShowOSD">
+      <arg type="a{sv}" direction="in" name="params"/>
+    </method>
+    <method name="ShowMonitorLabels">
+      <arg type="a{uv}" direction="in" name="params"/>
+    </method>
+    <method name="ShowMonitorLabels2">
+      <arg type="a{sv}" direction="in" name="params"/>
+    </method>
+    <method name="HideMonitorLabels"/>
+    <method name="FocusApp">
+      <arg type="s" direction="in" name="id"/>
+    </method>
+    <method name="ShowApplications"/>
+    <method name="GrabAccelerator">
+      <arg type="s" direction="in" name="accelerator"/>
+      <arg type="u" direction="in" name="flags"/>
+      <arg type="u" direction="out" name="action"/>
+    </method>
+    <method name="GrabAccelerators">
+      <arg type="a(su)" direction="in" name="accelerators"/>
+      <arg type="au" direction="out" name="actions"/>
+    </method>
+    <method name="UngrabAccelerator">
+      <arg type="u" direction="in" name="action"/>
+      <arg type="b" direction="out" name="success"/>
+    </method>
+    <signal name="AcceleratorActivated">
+      <arg name="action" type="u"/>
+      <arg name="parameters" type="a{sv}"/>
+    </signal>
+    <property name="Mode" type="s" access="read"/>
+    <property name="OverviewActive" type="b" access="readwrite"/>
+    <property name="ShellVersion" type="s" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.gtk.Notifications.xml b/data/dbus-interfaces/org.gtk.Notifications.xml
new file mode 100644 (file)
index 0000000..e2461ff
--- /dev/null
@@ -0,0 +1,13 @@
+<node>
+  <interface name="org.gtk.Notifications">
+    <method name="AddNotification">
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+      <arg type="a{sv}" direction="in"/>
+    </method>
+    <method name="RemoveNotification">
+      <arg type="s" direction="in"/>
+      <arg type="s" direction="in"/>
+    </method>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.mpris.MediaPlayer2.Player.xml b/data/dbus-interfaces/org.mpris.MediaPlayer2.Player.xml
new file mode 100644 (file)
index 0000000..550cb4c
--- /dev/null
@@ -0,0 +1,12 @@
+<node>
+  <interface name="org.mpris.MediaPlayer2.Player">
+    <method name="PlayPause"/>
+    <method name="Next"/>
+    <method name="Previous"/>
+    <property name="CanGoNext" type="b" access="read"/>
+    <property name="CanGoPrevious" type="b" access="read"/>
+    <property name="CanPlay" type="b" access="read"/>
+    <property name="Metadata" type="a{sv}" access="read"/>
+    <property name="PlaybackStatus" type="s" access="read"/>
+  </interface>
+</node>
diff --git a/data/dbus-interfaces/org.mpris.MediaPlayer2.xml b/data/dbus-interfaces/org.mpris.MediaPlayer2.xml
new file mode 100644 (file)
index 0000000..5febaf9
--- /dev/null
@@ -0,0 +1,7 @@
+<node>
+  <interface name="org.mpris.MediaPlayer2">
+    <method name="Raise"/>
+    <property name="CanRaise" type="b" access="read"/>
+    <property name="DesktopEntry" type="s" access="read"/>
+  </interface>
+</node>
index bc637eefd96b459dfc5a56ed024cb36a718dbda6..5183672c92daf67dfcbd2053b5b8a2867e7eaf87 100644 (file)
@@ -1,5 +1,55 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <gresources>
   <gresource prefix="/org/gnome/shell/dbus-interfaces">
+    <file preprocess="xml-stripblanks">net.hadess.SensorProxy.xml</file>
+    <file preprocess="xml-stripblanks">net.hadess.SwitcherooControl.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.Application.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.bolt1.Device.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.bolt1.Manager.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.DBus.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.GeoClue2.Agent.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.GeoClue2.Manager.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.Access.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.PermissionStore.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.Request.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.login1.Manager.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.login1.Session.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.login1.User.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.Modem3gpp.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.ModemCdma.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager.Modem.Cdma.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager.Modem.Gsm.Network.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.Notifications.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.PackageKit.Offline.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Provider.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Realm.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Service.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.UPower.Device.xml</file>
+    <file preprocess="xml-stripblanks">org.freedesktop.UPower.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Magnifier.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Magnifier.ZoomRegion.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.ScreenSaver.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SessionManager.EndSessionDialog.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SessionManager.Inhibitor.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SessionManager.Presence.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SessionManager.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Color.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Power.Screen.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Rfkill.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Wacom.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.AudioDeviceSelection.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.Extensions.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.HotplugSniffer.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.PerfHelper.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.PortalHelper.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.Screencast.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.Screenshot.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.Wacom.PadOsd.xml</file>
+    <file preprocess="xml-stripblanks">org.gnome.Shell.xml</file>
+    <file preprocess="xml-stripblanks">org.Gtk.MountOperationHandler.xml</file>
+    <file preprocess="xml-stripblanks">org.gtk.Notifications.xml</file>
+    <file preprocess="xml-stripblanks">org.mpris.MediaPlayer2.Player.xml</file>
+    <file preprocess="xml-stripblanks">org.mpris.MediaPlayer2.xml</file>
   </gresource>
 </gresources>
index 80b8d5cda95841b7725bfc99e6ec71992eecdf29..7660856f574d823e871d968b9d513463ed45d4f7 100644 (file)
@@ -13,18 +13,9 @@ const _ = Gettext.gettext;
 
 const Config = imports.misc.config;
 const ExtensionUtils = imports.misc.extensionUtils;
+const { loadInterfaceXML } = imports.misc.fileUtils;
 
-const GnomeShellIface = `
-<node>
-<interface name="org.gnome.Shell.Extensions">
-<signal name="ExtensionStatusChanged">
-    <arg type="s" name="uuid"/>
-    <arg type="i" name="state"/>
-    <arg type="s" name="error"/>
-</signal>
-</interface>
-</node>`;
-
+const GnomeShellIface = loadInterfaceXML('org.gnome.Shell.Extensions');
 const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
 
 function stripPrefix(string, prefix) {
index ae87aa193f62f5403852af93e1c2a802f04753d2..7b1fb907d867ca1d830c50fc9afada25e5a8231b 100644 (file)
@@ -5,61 +5,15 @@ const Lang = imports.lang;
 const Shell = imports.gi.Shell;
 const Signals = imports.signals;
 
-const ProviderIface = `
-<node>
-<interface name="org.freedesktop.realmd.Provider">
-    <property name="Name" type="s" access="read"/>
-    <property name="Version" type="s" access="read"/>
-    <property name="Realms" type="ao" access="read"/>
-    <method name="Discover">
-        <arg name="string" type="s" direction="in"/>
-        <arg name="options" type="a{sv}" direction="in"/>
-        <arg name="relevance" type="i" direction="out"/>
-        <arg name="realm" type="ao" direction="out"/>
-    </method>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const ProviderIface = loadInterfaceXML("org.freedesktop.realmd.Provider");
 const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
 
-const ServiceIface = `
-<node>
-<interface name="org.freedesktop.realmd.Service">
-    <method name="Cancel">
-        <arg name="operation" type="s" direction="in"/>
-    </method>
-    <method name="Release" />
-    <method name="SetLocale">
-        <arg name="locale" type="s" direction="in"/>
-    </method>
-    <signal name="Diagnostics">
-        <arg name="data" type="s"/>
-        <arg name="operation" type="s"/>
-    </signal>
-</interface>
-</node>`;
+const ServiceIface = loadInterfaceXML("org.freedesktop.realmd.Service");
 const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
 
-const RealmIface = `
-<node>
-<interface name="org.freedesktop.realmd.Realm">
-    <property name="Name" type="s" access="read"/>
-    <property name="Configured" type="s" access="read"/>
-    <property name="Details" type="a(ss)" access="read"/>
-    <property name="LoginFormats" type="as" access="read"/>
-    <property name="LoginPolicy" type="s" access="read"/>
-    <property name="PermittedLogins" type="as" access="read"/>
-    <property name="SupportedInterfaces" type="as" access="read"/>
-    <method name="ChangeLoginPolicy">
-        <arg name="login_policy" type="s" direction="in"/>
-        <arg name="permitted_add" type="as" direction="in"/>
-        <arg name="permitted_remove" type="as" direction="in"/>
-        <arg name="options" type="a{sv}" direction="in"/>
-    </method>
-    <method name="Deconfigure">
-        <arg name="options" type="a{sv}" direction="in"/>
-    </method>
-</interface>
-</node>`;
+const RealmIface = loadInterfaceXML("org.freedesktop.realmd.Realm");
 const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
 
 var Manager = new Lang.Class({
index 15a22023b41503b20b40dc2db1d9f1af5ff4ab1f..d747aadf6638b6a2783c2d0b0ad51576a819dbfe 100644 (file)
@@ -4,18 +4,9 @@ const Gio = imports.gi.Gio;
 const Lang = imports.lang;
 const Signals = imports.signals;
 
-const PresenceIface = `
-<node>
-<interface name="org.gnome.SessionManager.Presence">
-<method name="SetStatus">
-    <arg type="u" direction="in"/>
-</method>
-<property name="status" type="u" access="readwrite"/>
-<signal name="StatusChanged">
-    <arg type="u" direction="out"/>
-</signal>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const PresenceIface = loadInterfaceXML('org.gnome.SessionManager.Presence');
 
 var PresenceStatus = {
     AVAILABLE: 0,
@@ -33,49 +24,14 @@ function Presence(initCallback, cancellable) {
 // Note inhibitors are immutable objects, so they don't
 // change at runtime (changes always come in the form
 // of new inhibitors)
-const InhibitorIface = `
-<node>
-<interface name="org.gnome.SessionManager.Inhibitor">
-<method name="GetAppId">
-    <arg type="s" direction="out" />
-</method>
-<method name="GetReason">
-    <arg type="s" direction="out" />
-</method>
-</interface>
-</node>`;
-
+const InhibitorIface = loadInterfaceXML('org.gnome.SessionManager.Inhibitor');
 var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
 function Inhibitor(objectPath, initCallback, cancellable) {
     return new InhibitorProxy(Gio.DBus.session, 'org.gnome.SessionManager', objectPath, initCallback, cancellable);
 }
 
 // Not the full interface, only the methods we use
-const SessionManagerIface = `
-<node>
-<interface name="org.gnome.SessionManager">
-<method name="Logout">
-    <arg type="u" direction="in" />
-</method>
-<method name="Shutdown" />
-<method name="Reboot" />
-<method name="CanShutdown">
-    <arg type="b" direction="out" />
-</method>
-<method name="IsInhibited">
-    <arg type="u" direction="in" />
-    <arg type="b" direction="out" />
-</method>
-<property name="SessionIsActive" type="b" access="read"/>
-<signal name="InhibitorAdded">
-    <arg type="o" direction="out"/>
-</signal>
-<signal name="InhibitorRemoved">
-    <arg type="o" direction="out"/>
-</signal>
-</interface>
-</node>`;
-
+const SessionManagerIface = loadInterfaceXML('org.gnome.SessionManager');
 var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
 function SessionManager(initCallback, cancellable) {
     return new SessionManagerProxy(Gio.DBus.session, 'org.gnome.SessionManager', '/org/gnome/SessionManager', initCallback, cancellable);
index b5891a383d36ea6050ea135edf2ec773d1e90589..d3868184ec56dea47721d274568c393a29a2df7a 100644 (file)
@@ -7,56 +7,11 @@ const Mainloop = imports.mainloop;
 const Shell = imports.gi.Shell;
 const Signals = imports.signals;
 
-const SystemdLoginManagerIface = `
-<node>
-<interface name="org.freedesktop.login1.Manager">
-<method name="Suspend">
-    <arg type="b" direction="in"/>
-</method>
-<method name="CanSuspend">
-    <arg type="s" direction="out"/>
-</method>
-<method name="Inhibit">
-    <arg type="s" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="h" direction="out"/>
-</method>
-<method name="GetSession">
-    <arg type="s" direction="in"/>
-    <arg type="o" direction="out"/>
-</method>
-<method name="ListSessions">
-    <arg name="sessions" type="a(susso)" direction="out"/>
-</method>
-<signal name="PrepareForSleep">
-    <arg type="b" direction="out"/>
-</signal>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
 
-const SystemdLoginSessionIface = `
-<node>
-<interface name="org.freedesktop.login1.Session">
-<signal name="Lock" />
-<signal name="Unlock" />
-<property name="Active" type="b" access="read" />
-<property name="Class" type="s" access="read" />
-<property name="Id" type="s" access="read" />
-<method name="SetLockedHint">
-    <arg type="b" direction="in"/>
-</method>
-</interface>
-</node>`;
-
-const SystemdLoginUserIface = `
-<node>
-<interface name="org.freedesktop.login1.User">
-<property name="Display" type="(so)" access="read" />
-<property name="Sessions" type="a(so)" access="read" />
-</interface>
-</node>`;
+const SystemdLoginManagerIface = loadInterfaceXML('org.freedesktop.login1.Manager');
+const SystemdLoginSessionIface = loadInterfaceXML('org.freedesktop.login1.Session');
+const SystemdLoginUserIface = loadInterfaceXML('org.freedesktop.login1.User');
 
 const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
 const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
index c47393781fe0d71d311918cbd714821bb7bafe68..f57057848d88aa8f15170fc090756e2cb5430056 100644 (file)
@@ -5,6 +5,8 @@ const Lang = imports.lang;
 const NMA = imports.gi.NMA;
 const Signals = imports.signals;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 // _getMobileProvidersDatabase:
 //
 // Gets the database of mobile providers, with references between MCCMNC/SID and
@@ -92,44 +94,10 @@ function _findProviderForSid(sid) {
 // The following are not the complete interfaces, just the methods we need
 // (or may need in the future)
 
-const ModemGsmNetworkInterface = `
-<node>
-<interface name="org.freedesktop.ModemManager.Modem.Gsm.Network">
-<method name="GetRegistrationInfo">
-    <arg type="(uss)" direction="out" />
-</method>
-<method name="GetSignalQuality">
-    <arg type="u" direction="out" />
-</method>
-<property name="AccessTechnology" type="u" access="read" />
-<signal name="SignalQuality">
-    <arg type="u" direction="out" />
-</signal>
-<signal name="RegistrationInfo">
-    <arg type="u" direction="out" />
-    <arg type="s" direction="out" />
-    <arg type="s" direction="out" />
-</signal>
-</interface>
-</node>`;
-
+const ModemGsmNetworkInterface = loadInterfaceXML('org.freedesktop.ModemManager.Modem.Gsm.Network');
 const ModemGsmNetworkProxy = Gio.DBusProxy.makeProxyWrapper(ModemGsmNetworkInterface);
 
-const ModemCdmaInterface = `
-<node>
-<interface name="org.freedesktop.ModemManager.Modem.Cdma">
-<method name="GetSignalQuality">
-    <arg type="u" direction="out" />
-</method>
-<method name="GetServingSystem">
-    <arg type="(usu)" direction="out" />
-</method>
-<signal name="SignalQuality">
-    <arg type="u" direction="out" />
-</signal>
-</interface>
-</node>`;
-
+const ModemCdmaInterface = loadInterfaceXML('org.freedesktop.ModemManager.Modem.Cdma');
 const ModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(ModemCdmaInterface);
 
 var ModemGsm = new Lang.Class({
@@ -224,29 +192,13 @@ Signals.addSignalMethods(ModemCdma.prototype);
 // Support for the new ModemManager1 interface (MM >= 0.7)
 //------------------------------------------------------------------------------
 
-const BroadbandModemInterface = `
-<node>
-<interface name="org.freedesktop.ModemManager1.Modem">
-<property name="SignalQuality" type="(ub)" access="read" />
-</interface>
-</node>`;
+const BroadbandModemInterface = loadInterfaceXML('org.freedesktop.ModemManager1.Modem');
 const BroadbandModemProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemInterface);
 
-const BroadbandModem3gppInterface = `
-<node>
-<interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp">
-<property name="OperatorCode" type="s" access="read" />
-<property name="OperatorName" type="s" access="read" />
-</interface>
-</node>`;
+const BroadbandModem3gppInterface = loadInterfaceXML('org.freedesktop.ModemManager1.Modem.Modem3gpp');
 const BroadbandModem3gppProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModem3gppInterface);
 
-const BroadbandModemCdmaInterface = `
-<node>
-<interface name="org.freedesktop.ModemManager1.Modem.ModemCdma">
-<property name="Sid" type="u" access="read" />
-</interface>
-</node>`;
+const BroadbandModemCdmaInterface = loadInterfaceXML('org.freedesktop.ModemManager1.Modem.ModemCdma');
 const BroadbandModemCdmaProxy = Gio.DBusProxy.makeProxyWrapper(BroadbandModemCdmaInterface);
 
 var BroadbandModem = new Lang.Class({
index 6126e1fe41b978dca34f57f8a5b78286afb90a40..9118d4d3f97c8bd89d8ee7b7e4857e6c290c36a8 100644 (file)
@@ -2,32 +2,9 @@
 
 const Gio = imports.gi.Gio;
 
-const PermissionStoreIface = `
-<node>
-  <interface name="org.freedesktop.impl.portal.PermissionStore">
-    <method name="Lookup">
-      <arg name="table" type="s" direction="in"/>
-      <arg name="id" type="s" direction="in"/>
-      <arg name="permissions" type="a{sas}" direction="out"/>
-      <arg name="data" type="v" direction="out"/>
-    </method>
-    <method name="Set">
-      <arg name="table" type="s" direction="in"/>
-      <arg name="create" type="b" direction="in"/>
-      <arg name="id" type="s" direction="in"/>
-      <arg name="app_permissions" type="a{sas}" direction="in"/>
-      <arg name="data" type="v" direction="in"/>
-    </method>
-    <signal name="Changed">
-      <arg name="table" type="s" direction="out"/>
-      <arg name="id" type="s" direction="out"/>
-      <arg name="deleted" type="b" direction="out"/>
-      <arg name="data" type="v" direction="out"/>
-      <arg name="permissions" type="a{sas}" direction="out"/>
-    </signal>
-  </interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
 
+const PermissionStoreIface = loadInterfaceXML('org.freedesktop.impl.portal.PermissionStore');
 const PermissionStoreProxy = Gio.DBusProxy.makeProxyWrapper(PermissionStoreIface);
 
 function PermissionStore(initCallback, cancellable) {
index 434dd9555b9ccea4c1d3993bcb8b6ac5aeace562..3c1713745df14bca68e39d66eecb635f69043bd2 100644 (file)
@@ -11,6 +11,8 @@ const GnomeSession = imports.misc.gnomeSession;
 const LoginManager = imports.misc.loginManager;
 const Main = imports.ui.main;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const LOCKDOWN_SCHEMA = 'org.gnome.desktop.lockdown';
 const LOGIN_SCREEN_SCHEMA = 'org.gnome.login-screen';
 const DISABLE_USER_SWITCH_KEY = 'disable-user-switching';
@@ -22,12 +24,7 @@ const ALWAYS_SHOW_LOG_OUT_KEY = 'always-show-log-out';
 const SENSOR_BUS_NAME = 'net.hadess.SensorProxy';
 const SENSOR_OBJECT_PATH = '/net/hadess/SensorProxy';
 
-const SensorProxyInterface = `
-<node>
-<interface name="net.hadess.SensorProxy">
-  <property name="HasAccelerometer" type="b" access="read"/>
-</interface>
-</node>`;
+const SensorProxyInterface = loadInterfaceXML('net.hadess.SensorProxy');
 
 const POWER_OFF_ACTION_ID        = 'power-off';
 const LOCK_SCREEN_ACTION_ID      = 'lock-screen';
index 3a06747b071ccc1497a441b13fa0c9d61f0df395..7961c755f619cc2e4a95319dcea582481b95de76 100644 (file)
@@ -2,6 +2,7 @@
 <gresources>
   <gresource prefix="/org/gnome/shell">
     <file>misc/config.js</file>
+    <file>misc/fileUtils.js</file>
     <file>portalHelper/main.js</file>
   </gresource>
 </gresources>
index e112f820fcb159933645216768a69aa837289c46..a788b7479eddd29b5a8bca8308b11106cb3b6983 100644 (file)
@@ -12,6 +12,7 @@ const WebKit = imports.gi.WebKit2;
 const _ = Gettext.gettext;
 
 const Config = imports.misc.config;
+const { loadInterfaceXML } = imports.misc.fileUtils;
 
 const PortalHelperResult = {
     CANCELLED: 0,
@@ -30,26 +31,7 @@ const CONNECTIVITY_CHECK_HOST = 'nmcheck.gnome.org';
 const CONNECTIVITY_CHECK_URI = 'http://' + CONNECTIVITY_CHECK_HOST;
 const CONNECTIVITY_RECHECK_RATELIMIT_TIMEOUT = 30 * GLib.USEC_PER_SEC;
 
-const HelperDBusInterface = `
-<node>
-<interface name="org.gnome.Shell.PortalHelper">
-<method name="Authenticate">
-    <arg type="o" direction="in" name="connection" />
-    <arg type="s" direction="in" name="url" />
-    <arg type="u" direction="in" name="timestamp" />
-</method>
-<method name="Close">
-    <arg type="o" direction="in" name="connection" />
-</method>
-<method name="Refresh">
-    <arg type="o" direction="in" name="connection" />
-</method>
-<signal name="Done">
-    <arg type="o" name="connection" />
-    <arg type="u" name="result" />
-</signal>
-</interface>
-</node>`;
+const HelperDBusInterface = loadInterfaceXML('org.gnome.Shell.PortalHelper');
 
 var PortalHeaderBar = new Lang.Class({
     Name: 'PortalHeaderBar',
index bb59ee5ce2c4324d14009dbee43d608b05a331a9..ca0ff54a5f3ca38536f5297493b23bcbeaa78a56 100644 (file)
@@ -10,29 +10,10 @@ const CheckBox = imports.ui.checkBox;
 const Dialog = imports.ui.dialog;
 const ModalDialog = imports.ui.modalDialog;
 
-const RequestIface = `
-<node>
-<interface name="org.freedesktop.impl.portal.Request">
-<method name="Close"/>
-</interface>
-</node>`;
-
-const AccessIface = `
-<node>
-<interface name="org.freedesktop.impl.portal.Access">
-<method name="AccessDialog">
-  <arg type="o" name="handle" direction="in"/>
-  <arg type="s" name="app_id" direction="in"/>
-  <arg type="s" name="parent_window" direction="in"/>
-  <arg type="s" name="title" direction="in"/>
-  <arg type="s" name="subtitle" direction="in"/>
-  <arg type="s" name="body" direction="in"/>
-  <arg type="a{sv}" name="options" direction="in"/>
-  <arg type="u" name="response" direction="out"/>
-  <arg type="a{sv}" name="results" direction="out"/>
-</method>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const RequestIface = loadInterfaceXML('org.freedesktop.impl.portal.Request');
+const AccessIface = loadInterfaceXML('org.freedesktop.impl.portal.Access');
 
 var DialogResponse = {
     OK: 0,
index 623dc6f38510d053e682113af01fd27ebd81df27..67b796a262f1e423c052193b39eb4f3cf5d21f3b 100644 (file)
@@ -30,6 +30,8 @@ const Params = imports.misc.params;
 const Util = imports.misc.util;
 const SystemActions = imports.misc.systemActions;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 var MAX_APPLICATION_WORK_MILLIS = 75;
 var MENU_POPUP_TIMEOUT = 600;
 var MAX_COLUMNS = 6;
@@ -66,13 +68,7 @@ var PAGE_SWITCH_TIME = 0.3;
 const SWITCHEROO_BUS_NAME = 'net.hadess.SwitcherooControl';
 const SWITCHEROO_OBJECT_PATH = '/net/hadess/SwitcherooControl';
 
-const SwitcherooProxyInterface = `
-<node>
-<interface name="net.hadess.SwitcherooControl">
-  <property name="HasDualGpu" type="b" access="read"/>
-</interface>
-</node>`;
-
+const SwitcherooProxyInterface = loadInterfaceXML('net.hadess.SwitcherooControl');
 const SwitcherooProxy = Gio.DBusProxy.makeProxyWrapper(SwitcherooProxyInterface);
 let discreteGpuAvailable = false;
 
index 8010ec12c458874faaed759c0a808f9ba640d0ee..3f4b9bcc7682c8347d059a45a0930fa3878bb589 100644 (file)
@@ -9,25 +9,15 @@ const St = imports.gi.St;
 const Main = imports.ui.main;
 const ModalDialog = imports.ui.modalDialog;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 var AudioDevice = {
     HEADPHONES: 1 << 0,
     HEADSET:    1 << 1,
     MICROPHONE: 1 << 2
 };
 
-const AudioDeviceSelectionIface = `
-<node>
-<interface name="org.gnome.Shell.AudioDeviceSelection">
-<method name="Open">
-    <arg name="devices" direction="in" type="as" />
-</method>
-<method name="Close">
-</method>
-<signal name="DeviceSelected">
-    <arg name="device" type="s" />
-</signal>
-</interface>
-</node>`;
+const AudioDeviceSelectionIface = loadInterfaceXML('org.gnome.Shell.AudioDeviceSelection');
 
 var AudioDeviceSelectionDialog = new Lang.Class({
     Name: 'AudioDeviceSelectionDialog',
index 37c774c535f3b2f2545476ef3ea119afbbe33f6e..68a1643f25b56e709efae117427e75286f3544ef 100644 (file)
@@ -8,6 +8,8 @@ const GnomeSession = imports.misc.gnomeSession;
 const Main = imports.ui.main;
 const MessageTray = imports.ui.messageTray;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 // GSettings keys
 const SETTINGS_SCHEMA = 'org.gnome.desktop.media-handling';
 const SETTING_DISABLE_AUTORUN = 'autorun-never';
@@ -74,16 +76,7 @@ function startAppForMount(app, mount) {
 
 /******************************************/
 
-const HotplugSnifferIface = `
-<node>
-<interface name="org.gnome.Shell.HotplugSniffer">
-<method name="SniffURI">
-    <arg type="s" direction="in" />
-    <arg type="as" direction="out" />
-</method>
-</interface>
-</node>`;
-
+const HotplugSnifferIface = loadInterfaceXML('org.gnome.Shell.HotplugSniffer');
 const HotplugSnifferProxy = Gio.DBusProxy.makeProxyWrapper(HotplugSnifferIface);
 function HotplugSniffer() {
     return new HotplugSnifferProxy(Gio.DBus.session,
index a6b928ce29ec34d26d7e30e0ca99a7503a00f8be..23ed69769101488d16110c40e30b75eb5ae64f49 100644 (file)
@@ -36,6 +36,8 @@ const ModalDialog = imports.ui.modalDialog;
 const Tweener = imports.ui.tweener;
 const UserWidget = imports.ui.userWidget;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 let _endSessionDialog = null;
 
 const _ITEM_ICON_SIZE = 48;
@@ -43,23 +45,7 @@ const _DIALOG_ICON_SIZE = 48;
 
 var GSM_SESSION_MANAGER_LOGOUT_FORCE = 2;
 
-const EndSessionDialogIface = `
-<node>
-<interface name="org.gnome.SessionManager.EndSessionDialog">
-<method name="Open">
-    <arg type="u" direction="in" />
-    <arg type="u" direction="in" />
-    <arg type="u" direction="in" />
-    <arg type="ao" direction="in" />
-</method>
-<method name="Close" />
-<signal name="ConfirmedLogout" />
-<signal name="ConfirmedReboot" />
-<signal name="ConfirmedShutdown" />
-<signal name="Canceled" />
-<signal name="Closed" />
-</interface>
-</node>`;
+const EndSessionDialogIface = loadInterfaceXML('org.gnome.SessionManager.EndSessionDialog');
 
 const logoutDialogContent = {
     subjectWithUser: C_("title", "Log Out %s"),
@@ -169,43 +155,13 @@ const DialogContent = {
 
 var MAX_USERS_IN_SESSION_DIALOG = 5;
 
-const LogindSessionIface = `
-<node>
-<interface name="org.freedesktop.login1.Session">
-    <property name="Id" type="s" access="read"/>
-    <property name="Remote" type="b" access="read"/>
-    <property name="Class" type="s" access="read"/>
-    <property name="Type" type="s" access="read"/>
-    <property name="State" type="s" access="read"/>
-</interface>
-</node>`;
-
+const LogindSessionIface = loadInterfaceXML('org.freedesktop.login1.Session');
 const LogindSession = Gio.DBusProxy.makeProxyWrapper(LogindSessionIface);
 
-const PkOfflineIface = `
-<node>
-<interface name="org.freedesktop.PackageKit.Offline">
-    <property name="UpdatePrepared" type="b" access="read"/>
-    <property name="UpdateTriggered" type="b" access="read"/>
-    <property name="UpgradePrepared" type="b" access="read"/>
-    <property name="UpgradeTriggered" type="b" access="read"/>
-    <property name="PreparedUpgrade" type="a{sv}" access="read"/>
-    <method name="Trigger">
-        <arg type="s" name="action" direction="in"/>
-    </method>
-    <method name="Cancel"/>
-</interface>
-</node>`;
-
+const PkOfflineIface = loadInterfaceXML('org.freedesktop.PackageKit.Offline');
 const PkOfflineProxy = Gio.DBusProxy.makeProxyWrapper(PkOfflineIface);
 
-const UPowerIface = `
-<node>
-<interface name="org.freedesktop.UPower">
-    <property name="OnBattery" type="b" access="read"/>
-</interface>
-</node>`;
-
+const UPowerIface = loadInterfaceXML('org.freedesktop.UPower');
 const UPowerProxy = Gio.DBusProxy.makeProxyWrapper(UPowerIface);
 
 function findAppFromInhibitor(inhibitor) {
index c796d0735756fa000686489bd9e6452ae55106ae..210c5e337039beec7b038f6d72d61c603ac50ba2 100644 (file)
@@ -4,96 +4,18 @@ const Gio = imports.gi.Gio;
 const Lang = imports.lang;
 const Main = imports.ui.main;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const MAG_SERVICE_PATH = '/org/gnome/Magnifier';
 const ZOOM_SERVICE_PATH = '/org/gnome/Magnifier/ZoomRegion';
 
 // Subset of gnome-mag's Magnifier dbus interface -- to be expanded.  See:
 // http://git.gnome.org/browse/gnome-mag/tree/xml/...Magnifier.xml
-const MagnifierIface = `
-<node>
-<interface name="org.gnome.Magnifier">
-<method name="setActive">
-    <arg type="b" direction="in" />
-</method>
-<method name="isActive">
-    <arg type="b" direction="out" />
-</method>
-<method name="showCursor" />
-<method name="hideCursor" />
-<method name="createZoomRegion">
-    <arg type="d" direction="in" />
-    <arg type="d" direction="in" />
-    <arg type="ai" direction="in" />
-    <arg type="ai" direction="in" />
-    <arg type="o" direction="out" />
-</method>
-<method name="addZoomRegion">
-    <arg type="o" direction="in" />
-    <arg type="b" direction="out" />
-</method>
-<method name="getZoomRegions">
-    <arg type="ao" direction="out" />
-</method>
-<method name="clearAllZoomRegions" />
-<method name="fullScreenCapable">
-    <arg type="b" direction="out" />
-</method>
-<method name="setCrosswireSize">
-    <arg type="i" direction="in" />
-</method>
-<method name="getCrosswireSize">
-    <arg type="i" direction="out" />
-</method>
-<method name="setCrosswireLength">
-    <arg type="i" direction="in" />
-</method>
-<method name="getCrosswireLength">
-    <arg type="i" direction="out" />
-</method>
-<method name="setCrosswireClip">
-    <arg type="b" direction="in" />
-</method>
-<method name="getCrosswireClip">
-    <arg type="b" direction="out" />
-</method>
-<method name="setCrosswireColor">
-    <arg type="u" direction="in" />
-</method>
-<method name="getCrosswireColor">
-    <arg type="u" direction="out" />
-</method>
-</interface>
-</node>`;
+const MagnifierIface = loadInterfaceXML('org.gnome.Magnifier');
 
 // Subset of gnome-mag's ZoomRegion dbus interface -- to be expanded.  See:
 // http://git.gnome.org/browse/gnome-mag/tree/xml/...ZoomRegion.xml
-const ZoomRegionIface = `
-<node>
-<interface name="org.gnome.Magnifier.ZoomRegion">
-<method name="setMagFactor">
-    <arg type="d" direction="in" />
-    <arg type="d" direction="in" />
-</method>
-<method name="getMagFactor">
-    <arg type="d" direction="out" />
-    <arg type="d" direction="out" />
-</method>
-<method name="setRoi">
-    <arg type="ai" direction="in" />
-</method>
-<method name="getRoi">
-    <arg type="ai" direction="out" />
-</method>
-<method name="shiftContentsTo">
-    <arg type="i" direction="in" />
-    <arg type="i" direction="in" />
-    <arg type="b" direction="out" />
-</method>
-<method name="moveResize">
-    <arg type="ai" direction="in" />
-</method>
-</interface>
-</node>`;
+const ZoomRegionIface = loadInterfaceXML('org.gnome.Magnifier.ZoomRegion');
 
 // For making unique ZoomRegion DBus proxy object paths of the form:
 // '/org/gnome/Magnifier/ZoomRegion/zoomer0',
index a3b369ce2e14d5224fa4188ed890fadc93db81f8..3b5521265d5f77f4a69f22ec396bb4dbd683b647 100644 (file)
@@ -8,44 +8,15 @@ const Calendar = imports.ui.calendar;
 const Main = imports.ui.main;
 const MessageList = imports.ui.messageList;
 
-const DBusIface = `
-<node>
-<interface name="org.freedesktop.DBus">
-  <method name="ListNames">
-    <arg type="as" direction="out" name="names" />
-  </method>
-  <signal name="NameOwnerChanged">
-    <arg type="s" direction="out" name="name" />
-    <arg type="s" direction="out" name="oldOwner" />
-    <arg type="s" direction="out" name="newOwner" />
-  </signal>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const DBusIface = loadInterfaceXML('org.freedesktop.DBus');
 const DBusProxy = Gio.DBusProxy.makeProxyWrapper(DBusIface);
 
-const MprisIface = `
-<node>
-<interface name="org.mpris.MediaPlayer2">
-  <method name="Raise" />
-  <property name="CanRaise" type="b" access="read" />
-  <property name="DesktopEntry" type="s" access="read" />
-</interface>
-</node>`;
+const MprisIface = loadInterfaceXML('org.mpris.MediaPlayer2');
 const MprisProxy = Gio.DBusProxy.makeProxyWrapper(MprisIface);
 
-const MprisPlayerIface = `
-<node>
-<interface name="org.mpris.MediaPlayer2.Player">
-  <method name="PlayPause" />
-  <method name="Next" />
-  <method name="Previous" />
-  <property name="CanGoNext" type="b" access="read" />
-  <property name="CanGoPrevious" type="b" access="read" />
-  <property name="CanPlay" type="b" access="read" />
-  <property name="Metadata" type="a{sv}" access="read" />
-  <property name="PlaybackStatus" type="s" access="read" />
-</interface>
-</node>`;
+const MprisPlayerIface = loadInterfaceXML('org.mpris.MediaPlayer2.Player');
 const MprisPlayerProxy = Gio.DBusProxy.makeProxyWrapper(MprisPlayerIface);
 
 const MPRIS_PLAYER_PREFIX = 'org.mpris.MediaPlayer2.';
index 19d23da1404e31e21c931deab3772ecc591ee496..81d3e3ae3c73bb06f69c09986986cafa802fd715 100644 (file)
@@ -16,58 +16,16 @@ const MessageTray = imports.ui.messageTray;
 const Params = imports.misc.params;
 const Util = imports.misc.util;
 
-// Should really be defined in Gio.js
-const BusIface = `
-<node>
-<interface name="org.freedesktop.DBus">
-<method name="GetConnectionUnixProcessID">
-    <arg type="s" direction="in" />
-    <arg type="u" direction="out" />
-</method>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
 
+// Should really be defined in Gio.js
+const BusIface = loadInterfaceXML('org.freedesktop.DBus');
 var BusProxy = Gio.DBusProxy.makeProxyWrapper(BusIface);
 function Bus() {
     return new BusProxy(Gio.DBus.session, 'org.freedesktop.DBus', '/org/freedesktop/DBus');
 }
 
-const FdoNotificationsIface = `
-<node>
-<interface name="org.freedesktop.Notifications">
-<method name="Notify">
-    <arg type="s" direction="in"/>
-    <arg type="u" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="s" direction="in"/>
-    <arg type="as" direction="in"/>
-    <arg type="a{sv}" direction="in"/>
-    <arg type="i" direction="in"/>
-    <arg type="u" direction="out"/>
-</method>
-<method name="CloseNotification">
-    <arg type="u" direction="in"/>
-</method>
-<method name="GetCapabilities">
-    <arg type="as" direction="out"/>
-</method>
-<method name="GetServerInformation">
-    <arg type="s" direction="out"/>
-    <arg type="s" direction="out"/>
-    <arg type="s" direction="out"/>
-    <arg type="s" direction="out"/>
-</method>
-<signal name="NotificationClosed">
-    <arg type="u"/>
-    <arg type="u"/>
-</signal>
-<signal name="ActionInvoked">
-    <arg type="u"/>
-    <arg type="s"/>
-</signal>
-</interface>
-</node>`;
+const FdoNotificationsIface = loadInterfaceXML('org.freedesktop.Notifications');
 
 var NotificationClosedReason = {
     EXPIRED: 1,
@@ -656,19 +614,7 @@ var GtkNotificationDaemonNotification = new Lang.Class({
     },
 });
 
-const FdoApplicationIface = `
-<node>
-<interface name="org.freedesktop.Application">
-<method name="ActivateAction">
-    <arg type="s" direction="in" />
-    <arg type="av" direction="in" />
-    <arg type="a{sv}" direction="in" />
-</method>
-<method name="Activate">
-    <arg type="a{sv}" direction="in" />
-</method>
-</interface>
-</node>`;
+const FdoApplicationIface = loadInterfaceXML('org.freedesktop.Application');
 const FdoApplicationProxy = Gio.DBusProxy.makeProxyWrapper(FdoApplicationIface);
 
 function objectPathFromAppId(appId) {
@@ -777,20 +723,7 @@ var GtkNotificationDaemonAppSource = new Lang.Class({
     },
 });
 
-const GtkNotificationsIface = `
-<node>
-<interface name="org.gtk.Notifications">
-<method name="AddNotification">
-    <arg type="s" direction="in" />
-    <arg type="s" direction="in" />
-    <arg type="a{sv}" direction="in" />
-</method>
-<method name="RemoveNotification">
-    <arg type="s" direction="in" />
-    <arg type="s" direction="in" />
-</method>
-</interface>
-</node>`;
+const GtkNotificationsIface = loadInterfaceXML('org.gtk.Notifications');
 
 var GtkNotificationDaemon = new Lang.Class({
     Name: 'GtkNotificationDaemon',
index 76321f5f57b1b17732f175daa791cf18759da24f..48219026ca4f8733e5caa217d405184c1ad693cf 100644 (file)
@@ -19,6 +19,8 @@ const Main = imports.ui.main;
 const PopupMenu = imports.ui.popupMenu;
 const Layout = imports.ui.layout;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const ACTIVE_COLOR = "#729fcf";
 
 const LTR = 0;
@@ -962,15 +964,7 @@ var PadOsd = new Lang.Class({
 });
 Signals.addSignalMethods(PadOsd.prototype);
 
-const PadOsdIface = `
-<node>
-<interface name="org.gnome.Shell.Wacom.PadOsd">
-<method name="Show">
-    <arg name="device_node" direction="in" type="o"/>
-    <arg name="edition_mode" direction="in" type="b"/>
-</method>
-</interface>
-</node>`;
+const PadOsdIface = loadInterfaceXML('org.gnome.Shell.Wacom.PadOsd');
 
 var PadOsdService = new Lang.Class({
     Name: 'PadOsdService',
index 91514e3a07226d71a99648dae7cd795a45adf7ef..e57b0ef7d733d4edb2e6582afe67f44f264e2c48 100644 (file)
@@ -8,30 +8,9 @@ const Signals = imports.signals;
 
 const Main = imports.ui.main;
 
-const ScreencastIface = `
-<node>
-<interface name="org.gnome.Shell.Screencast">
-<method name="Screencast">
-    <arg type="s" direction="in" name="file_template"/>
-    <arg type="a{sv}" direction="in" name="options"/>
-    <arg type="b" direction="out" name="success"/>
-    <arg type="s" direction="out" name="filename_used"/>
-</method>
-<method name="ScreencastArea">
-    <arg type="i" direction="in" name="x"/>
-    <arg type="i" direction="in" name="y"/>
-    <arg type="i" direction="in" name="width"/>
-    <arg type="i" direction="in" name="height"/>
-    <arg type="s" direction="in" name="file_template"/>
-    <arg type="a{sv}" direction="in" name="options"/>
-    <arg type="b" direction="out" name="success"/>
-    <arg type="s" direction="out" name="filename_used"/>
-</method>
-<method name="StopScreencast">
-    <arg type="b" direction="out" name="success"/>
-</method>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const ScreencastIface = loadInterfaceXML('org.gnome.Shell.Screencast');
 
 var ScreencastService = new Lang.Class({
     Name: 'ScreencastService',
index 65345425610b27b6dfa9e81d4c372996ac3b4589..edfac1dd964aa36320867dcb59a4df5f4e3e88cd 100644 (file)
@@ -16,51 +16,9 @@ const Lightbox = imports.ui.lightbox;
 const Main = imports.ui.main;
 const Tweener = imports.ui.tweener;
 
-const ScreenshotIface = `
-<node>
-<interface name="org.gnome.Shell.Screenshot">
-<method name="ScreenshotArea">
-    <arg type="i" direction="in" name="x"/>
-    <arg type="i" direction="in" name="y"/>
-    <arg type="i" direction="in" name="width"/>
-    <arg type="i" direction="in" name="height"/>
-    <arg type="b" direction="in" name="flash"/>
-    <arg type="s" direction="in" name="filename"/>
-    <arg type="b" direction="out" name="success"/>
-    <arg type="s" direction="out" name="filename_used"/>
-</method>
-<method name="ScreenshotWindow">
-    <arg type="b" direction="in" name="include_frame"/>
-    <arg type="b" direction="in" name="include_cursor"/>
-    <arg type="b" direction="in" name="flash"/>
-    <arg type="s" direction="in" name="filename"/>
-    <arg type="b" direction="out" name="success"/>
-    <arg type="s" direction="out" name="filename_used"/>
-</method>
-<method name="Screenshot">
-    <arg type="b" direction="in" name="include_cursor"/>
-    <arg type="b" direction="in" name="flash"/>
-    <arg type="s" direction="in" name="filename"/>
-    <arg type="b" direction="out" name="success"/>
-    <arg type="s" direction="out" name="filename_used"/>
-</method>
-<method name="SelectArea">
-    <arg type="i" direction="out" name="x"/>
-    <arg type="i" direction="out" name="y"/>
-    <arg type="i" direction="out" name="width"/>
-    <arg type="i" direction="out" name="height"/>
-</method>
-<method name="FlashArea">
-    <arg type="i" direction="in" name="x"/>
-    <arg type="i" direction="in" name="y"/>
-    <arg type="i" direction="in" name="width"/>
-    <arg type="i" direction="in" name="height"/>
-</method>
-<method name="PickColor">
-    <arg type="a{sv}" direction="out" name="result"/>
-</method>
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const ScreenshotIface = loadInterfaceXML('org.gnome.Shell.Screenshot');
 
 var ScreenshotService = new Lang.Class({
     Name: 'ScreenshotService',
index b325eb10d93ed5592ab636749056e6980b4a3a39..495319591772133e43100a1ff9a3df7204a51c86 100644 (file)
@@ -9,6 +9,8 @@ const Shell = imports.gi.Shell;
 const Main = imports.ui.main;
 const Params = imports.misc.params;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 // This module provides functionality for driving the shell user interface
 // in an automated fashion. The primary current use case for this is
 // automated performance testing (see runPerfScript()), but it could
@@ -68,21 +70,7 @@ function waitLeisure() {
     return callback => { cb = callback; };
 }
 
-const PerfHelperIface = `
-<node>
-<interface name="org.gnome.Shell.PerfHelper">
-<method name="CreateWindow">
-    <arg type="i" direction="in" />
-    <arg type="i" direction="in" />
-    <arg type="b" direction="in" />
-    <arg type="b" direction="in" />
-    <arg type="b" direction="in" />
-</method>
-<method name="WaitWindows" />
-<method name="DestroyWindows" />
-</interface>
-</node>`;
-
+const PerfHelperIface = loadInterfaceXML('org.gnome.Shell.PerfHelper');
 var PerfHelperProxy = Gio.DBusProxy.makeProxyWrapper(PerfHelperIface);
 function PerfHelper() {
     return new PerfHelperProxy(Gio.DBus.session, 'org.gnome.Shell.PerfHelper', '/org/gnome/Shell/PerfHelper');
index 871fe99246e348868e04d7ab30b8fb86aad59852..a200a1bdd351cb60685fcecc301e819370572757 100644 (file)
@@ -14,72 +14,10 @@ const Main = imports.ui.main;
 const Screenshot = imports.ui.screenshot;
 const ViewSelector = imports.ui.viewSelector;
 
-const GnomeShellIface = `
-<node>
-<interface name="org.gnome.Shell">
-<method name="Eval">
-    <arg type="s" direction="in" name="script" />
-    <arg type="b" direction="out" name="success" />
-    <arg type="s" direction="out" name="result" />
-</method>
-<method name="FocusSearch"/>
-<method name="ShowOSD">
-    <arg type="a{sv}" direction="in" name="params"/>
-</method>
-<method name="ShowMonitorLabels">
-    <arg type="a{uv}" direction="in" name="params" />
-</method>
-<method name="ShowMonitorLabels2">
-    <arg type="a{sv}" direction="in" name="params" />
-</method>
-<method name="HideMonitorLabels" />
-<method name="FocusApp">
-    <arg type="s" direction="in" name="id"/>
-</method>
-<method name="ShowApplications" />
-<method name="GrabAccelerator">
-    <arg type="s" direction="in" name="accelerator"/>
-    <arg type="u" direction="in" name="flags"/>
-    <arg type="u" direction="out" name="action"/>
-</method>
-<method name="GrabAccelerators">
-    <arg type="a(su)" direction="in" name="accelerators"/>
-    <arg type="au" direction="out" name="actions"/>
-</method>
-<method name="UngrabAccelerator">
-    <arg type="u" direction="in" name="action"/>
-    <arg type="b" direction="out" name="success"/>
-</method>
-<signal name="AcceleratorActivated">
-    <arg name="action" type="u" />
-    <arg name="parameters" type="a{sv}" />
-</signal>
-<property name="Mode" type="s" access="read" />
-<property name="OverviewActive" type="b" access="readwrite" />
-<property name="ShellVersion" type="s" access="read" />
-</interface>
-</node>`;
-
-const ScreenSaverIface = `
-<node>
-<interface name="org.gnome.ScreenSaver">
-<method name="Lock">
-</method>
-<method name="GetActive">
-    <arg name="active" direction="out" type="b" />
-</method>
-<method name="SetActive">
-    <arg name="value" direction="in" type="b" />
-</method>
-<method name="GetActiveTime">
-    <arg name="value" direction="out" type="u" />
-</method>
-<signal name="ActiveChanged">
-    <arg name="new_value" type="b" />
-</signal>
-<signal name="WakeUpScreen" />
-</interface>
-</node>`;
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
+const GnomeShellIface = loadInterfaceXML('org.gnome.Shell');
+const ScreenSaverIface = loadInterfaceXML('org.gnome.ScreenSaver');
 
 var GnomeShell = new Lang.Class({
     Name: 'GnomeShellDBus',
@@ -295,44 +233,7 @@ var GnomeShell = new Lang.Class({
     ShellVersion: Config.PACKAGE_VERSION
 });
 
-const GnomeShellExtensionsIface = `
-<node>
-<interface name="org.gnome.Shell.Extensions">
-<method name="ListExtensions">
-    <arg type="a{sa{sv}}" direction="out" name="extensions" />
-</method>
-<method name="GetExtensionInfo">
-    <arg type="s" direction="in" name="extension" />
-    <arg type="a{sv}" direction="out" name="info" />
-</method>
-<method name="GetExtensionErrors">
-    <arg type="s" direction="in" name="extension" />
-    <arg type="as" direction="out" name="errors" />
-</method>
-<signal name="ExtensionStatusChanged">
-    <arg type="s" name="uuid"/>
-    <arg type="i" name="state"/>
-    <arg type="s" name="error"/>
-</signal>
-<method name="InstallRemoteExtension">
-    <arg type="s" direction="in" name="uuid"/>
-    <arg type="s" direction="out" name="result"/>
-</method>
-<method name="UninstallExtension">
-    <arg type="s" direction="in" name="uuid"/>
-    <arg type="b" direction="out" name="success"/>
-</method>
-<method name="LaunchExtensionPrefs">
-    <arg type="s" direction="in" name="uuid"/>
-</method>
-<method name="ReloadExtension">
-    <arg type="s" direction="in" name="uuid"/>
-</method>
-<method name="CheckForUpdates">
-</method>
-<property name="ShellVersion" type="s" access="read" />
-</interface>
-</node>`;
+const GnomeShellExtensionsIface = loadInterfaceXML('org.gnome.Shell.Extensions');
 
 var GnomeShellExtensions = new Lang.Class({
     Name: 'GnomeShellExtensionsDBus',
index 9be0a4650d20c38ee2e0c3b659172c3ba520974a..4b03490d5ed08d236122d1e3db5f941fe3fc8101 100644 (file)
@@ -18,6 +18,8 @@ const ModalDialog = imports.ui.modalDialog;
 const Params = imports.misc.params;
 const ShellEntry = imports.ui.shellEntry;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 var LIST_ITEM_ICON_SIZE = 48;
 
 const REMEMBER_MOUNT_PASSWORD_KEY = 'remember-mount-password';
@@ -436,39 +438,7 @@ var ShellProcessesDialog = new Lang.Class({
 });
 Signals.addSignalMethods(ShellProcessesDialog.prototype);
 
-const GnomeShellMountOpIface = `
-<node>
-<interface name="org.Gtk.MountOperationHandler">
-<method name="AskPassword">
-    <arg type="s" direction="in" name="object_id"/>
-    <arg type="s" direction="in" name="message"/>
-    <arg type="s" direction="in" name="icon_name"/>
-    <arg type="s" direction="in" name="default_user"/>
-    <arg type="s" direction="in" name="default_domain"/>
-    <arg type="u" direction="in" name="flags"/>
-    <arg type="u" direction="out" name="response"/>
-    <arg type="a{sv}" direction="out" name="response_details"/>
-</method>
-<method name="AskQuestion">
-    <arg type="s" direction="in" name="object_id"/>
-    <arg type="s" direction="in" name="message"/>
-    <arg type="s" direction="in" name="icon_name"/>
-    <arg type="as" direction="in" name="choices"/>
-    <arg type="u" direction="out" name="response"/>
-    <arg type="a{sv}" direction="out" name="response_details"/>
-</method>
-<method name="ShowProcesses">
-    <arg type="s" direction="in" name="object_id"/>
-    <arg type="s" direction="in" name="message"/>
-    <arg type="s" direction="in" name="icon_name"/>
-    <arg type="ai" direction="in" name="application_pids"/>
-    <arg type="as" direction="in" name="choices"/>
-    <arg type="u" direction="out" name="response"/>
-    <arg type="a{sv}" direction="out" name="response_details"/>
-</method>
-<method name="Close"/>
-</interface>
-</node>`;
+const GnomeShellMountOpIface = loadInterfaceXML('org.Gtk.MountOperationHandler');
 
 var ShellMountOperationType = {
     NONE: 0,
index c81f8362e42533f26f67910924874cb95dc14e15..69347ba3830234cf1a3648767b71e26d57ed7e45 100644 (file)
@@ -8,18 +8,12 @@ const Main = imports.ui.main;
 const PanelMenu = imports.ui.panelMenu;
 const PopupMenu = imports.ui.popupMenu;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const BUS_NAME = 'org.gnome.SettingsDaemon.Rfkill';
 const OBJECT_PATH = '/org/gnome/SettingsDaemon/Rfkill';
 
-const RfkillManagerInterface = `
-<node>
-<interface name="org.gnome.SettingsDaemon.Rfkill">
-<property name="BluetoothAirplaneMode" type="b" access="readwrite" />
-<property name="BluetoothHasAirplaneMode" type="b" access="read" />
-<property name="BluetoothHardwareAirplaneMode" type="b" access="readwrite" />
-</interface>
-</node>`;
-
+const RfkillManagerInterface = loadInterfaceXML('org.gnome.SettingsDaemon.Rfkill');
 const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
 
 const HAD_BLUETOOTH_DEVICES_SETUP = 'had-bluetooth-devices-setup';
index 50640d2db7342b018f693c55a9660c428007bc1a..a1fb976d81b9fcb8b74d081a201dbb4d59f416ba 100644 (file)
@@ -8,16 +8,12 @@ const PanelMenu = imports.ui.panelMenu;
 const PopupMenu = imports.ui.popupMenu;
 const Slider = imports.ui.slider;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const BUS_NAME = 'org.gnome.SettingsDaemon.Power';
 const OBJECT_PATH = '/org/gnome/SettingsDaemon/Power';
 
-const BrightnessInterface = `
-<node>
-<interface name="org.gnome.SettingsDaemon.Power.Screen">
-<property name="Brightness" type="i" access="readwrite"/>
-</interface>
-</node>`;
-
+const BrightnessInterface = loadInterfaceXML('org.gnome.SettingsDaemon.Power.Screen');
 const BrightnessProxy = Gio.DBusProxy.makeProxyWrapper(BrightnessInterface);
 
 var Indicator = new Lang.Class({
index b5d6c7dd38a45e2f0708a347b51c887730f8b103..ed4863eca4a284a686195e02f3633d0def8c64f1 100644 (file)
@@ -15,6 +15,8 @@ const Shell = imports.gi.Shell;
 const Signals = imports.signals;
 const St = imports.gi.St;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const LOCATION_SCHEMA = 'org.gnome.system.location';
 const MAX_ACCURACY_LEVEL = 'max-accuracy-level';
 const ENABLED = 'enabled';
@@ -40,31 +42,10 @@ function accuracyLevelToString(accuracyLevel) {
     return 'NONE';
 }
 
-var GeoclueIface = `
-<node>
-  <interface name="org.freedesktop.GeoClue2.Manager">
-    <property name="InUse" type="b" access="read"/>
-    <property name="AvailableAccuracyLevel" type="u" access="read"/>
-    <method name="AddAgent">
-      <arg name="id" type="s" direction="in"/>
-    </method>
-  </interface>
-</node>`;
-
+var GeoclueIface = loadInterfaceXML('org.freedesktop.GeoClue2.Manager');
 const GeoclueManager = Gio.DBusProxy.makeProxyWrapper(GeoclueIface);
 
-var AgentIface = `
-<node>
-  <interface name="org.freedesktop.GeoClue2.Agent">
-    <property name="MaxAccuracyLevel" type="u" access="read"/>
-    <method name="AuthorizeApp">
-      <arg name="desktop_id" type="s" direction="in"/>
-      <arg name="req_accuracy_level" type="u" direction="in"/>
-      <arg name="authorized" type="b" direction="out"/>
-      <arg name="allowed_accuracy_level" type="u" direction="out"/>
-    </method>
-  </interface>
-</node>`;
+var AgentIface = loadInterfaceXML('org.freedesktop.GeoClue2.Agent');
 
 var Indicator = new Lang.Class({
     Name: 'LocationIndicator',
index d4a09bc320ff8f7dbae210cdb81bcbce8073c6d7..b575a726d9755b11c0f208d283842f76fef3639b 100644 (file)
@@ -21,6 +21,8 @@ const ModemManager = imports.misc.modemManager;
 const Rfkill = imports.ui.status.rfkill;
 const Util = imports.misc.util;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const NMConnectionCategory = {
     INVALID: 'invalid',
     WIRED: 'wired',
@@ -51,26 +53,7 @@ var PortalHelperResult = {
     RECHECK: 2
 };
 
-const PortalHelperIface = `
-<node>
-<interface name="org.gnome.Shell.PortalHelper">
-<method name="Authenticate">
-    <arg type="o" direction="in" name="connection" />
-    <arg type="s" direction="in" name="url" />
-    <arg type="u" direction="in" name="timestamp" />
-</method>
-<method name="Close">
-    <arg type="o" direction="in" name="connection" />
-</method>
-<method name="Refresh">
-    <arg type="o" direction="in" name="connection" />
-</method>
-<signal name="Done">
-    <arg type="o" name="connection" />
-    <arg type="u" name="result" />
-</signal>
-</interface>
-</node>`;
+const PortalHelperIface = loadInterfaceXML('org.gnome.Shell.PortalHelper');
 const PortalHelperProxy = Gio.DBusProxy.makeProxyWrapper(PortalHelperIface);
 
 function signalToIcon(value) {
index f369d3df2da86bed9c466e507f02b7ea42d81758..d4a2fef93da7785066cea5bcde7dfec4453479e6 100644 (file)
@@ -7,17 +7,12 @@ const Main = imports.ui.main;
 const PanelMenu = imports.ui.panelMenu;
 const PopupMenu = imports.ui.popupMenu;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const BUS_NAME = 'org.gnome.SettingsDaemon.Color';
 const OBJECT_PATH = '/org/gnome/SettingsDaemon/Color';
 
-const ColorInterface = `
-<node>
-<interface name="org.gnome.SettingsDaemon.Color">
-  <property name="DisabledUntilTomorrow" type="b" access="readwrite"/>
-  <property name="NightLightActive" type="b" access="read"/>
-</interface>
-</node>`;
-
+const ColorInterface = loadInterfaceXML('org.gnome.SettingsDaemon.Color');
 const ColorProxy = Gio.DBusProxy.makeProxyWrapper(ColorInterface);
 
 var Indicator = new Lang.Class({
index cf57d8cf150e595eba289bf76c736345e83fdb94..f21693f53388ff069f8aeb64b2a46e61d4e3a2f8 100644 (file)
@@ -10,22 +10,12 @@ const Main = imports.ui.main;
 const PanelMenu = imports.ui.panelMenu;
 const PopupMenu = imports.ui.popupMenu;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const BUS_NAME = 'org.freedesktop.UPower';
 const OBJECT_PATH = '/org/freedesktop/UPower/devices/DisplayDevice';
 
-const DisplayDeviceInterface = `
-<node>
-<interface name="org.freedesktop.UPower.Device">
-  <property name="Type" type="u" access="read"/>
-  <property name="State" type="u" access="read"/>
-  <property name="Percentage" type="d" access="read"/>
-  <property name="TimeToEmpty" type="x" access="read"/>
-  <property name="TimeToFull" type="x" access="read"/>
-  <property name="IsPresent" type="b" access="read"/>
-  <property name="IconName" type="s" access="read"/>
-</interface>
-</node>`;
-
+const DisplayDeviceInterface = loadInterfaceXML('org.freedesktop.UPower.Device');
 const PowerManagerProxy = Gio.DBusProxy.makeProxyWrapper(DisplayDeviceInterface);
 
 const SHOW_BATTERY_PERCENTAGE       = 'show-battery-percentage';
index ecc8745968c74ecb5800769425b896cfd210287f..8022fb94b13f94903dc4bc62f47b7d2525d41101 100644 (file)
@@ -8,18 +8,12 @@ const Main = imports.ui.main;
 const PanelMenu = imports.ui.panelMenu;
 const PopupMenu = imports.ui.popupMenu;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 const BUS_NAME = 'org.gnome.SettingsDaemon.Rfkill';
 const OBJECT_PATH = '/org/gnome/SettingsDaemon/Rfkill';
 
-const RfkillManagerInterface = `
-<node>
-<interface name="org.gnome.SettingsDaemon.Rfkill">
-<property name="AirplaneMode" type="b" access="readwrite" />
-<property name="HardwareAirplaneMode" type="b" access="read" />
-<property name="ShouldShowAirplaneMode" type="b" access="read" />
-</interface>
-</node>`;
-
+const RfkillManagerInterface = loadInterfaceXML('org.gnome.SettingsDaemon.Rfkill');
 const RfkillManagerProxy = Gio.DBusProxy.makeProxyWrapper(RfkillManagerInterface);
 
 var RfkillManager = new Lang.Class({
index efb401a1632f7e378ca17af2ef07e41ab3f968d1..4584748eda7f4708728e8e92986183e4d2e53ad5 100644 (file)
@@ -12,44 +12,12 @@ const Main = imports.ui.main;
 const MessageTray = imports.ui.messageTray;
 const PanelMenu = imports.ui.panelMenu;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 /* Keep in sync with data/org.freedesktop.bolt.xml */
 
-const BoltClientInterface = `
-<node>
-  <interface name="org.freedesktop.bolt1.Manager">
-    <property name="Probing" type="b" access="read"></property>
-    <property name="AuthMode" type="s" access="readwrite"></property>
-    <method name="EnrollDevice">
-      <arg type="s" name="uid" direction="in"> </arg>
-      <arg type="s" name="policy" direction="in"> </arg>
-      <arg type="s" name="flags" direction="in"> </arg>
-      <arg name="device" direction="out" type="o"> </arg>
-    </method>
-    <signal name="DeviceAdded">
-      <arg name="device" type="o"> </arg>
-    </signal>
-  </interface>
-</node>`;
-
-const BoltDeviceInterface = `
-<node>
-  <interface name="org.freedesktop.bolt1.Device">
-    <property name="Uid" type="s" access="read"></property>
-    <property name="Name" type="s" access="read"></property>
-    <property name="Vendor" type="s" access="read"></property>
-    <property name="Type" type="s" access="read"></property>
-    <property name="Status" type="s" access="read"></property>
-    <property name="Parent" type="s" access="read"></property>
-    <property name="SysfsPath" type="s" access="read"></property>
-    <property name="Stored" type="b" access="read"></property>
-    <property name="Policy" type="s" access="read"></property>
-    <property name="Key" type="s" access="read"></property>
-    <property name="Label" type="s" access="read"></property>
-    <property name="ConnectTime" type="t" access="read"></property>
-    <property name="AuthorizeTime" type="t" access="read"></property>
-    <property name="StoreTime" type="t" access="read"></property>
-  </interface>
-</node>`;
+const BoltClientInterface = loadInterfaceXML('org.freedesktop.bolt1.Manager');
+const BoltDeviceInterface = loadInterfaceXML('org.freedesktop.bolt1.Device');
 
 const BoltDeviceProxy = Gio.DBusProxy.makeProxyWrapper(BoltDeviceInterface);
 
index 0c6ab1be0e98a7db6d2bc1a4413765f23a995d09..cfcfa3fcb257fa532287136b01843941c3327f72 100644 (file)
@@ -25,6 +25,8 @@ const EdgeDragAction = imports.ui.edgeDragAction;
 const CloseDialog = imports.ui.closeDialog;
 const SwitchMonitor = imports.ui.switchMonitor;
 
+const { loadInterfaceXML } = imports.misc.fileUtils;
+
 var SHELL_KEYBINDINGS_SCHEMA = 'org.gnome.shell.keybindings';
 var MINIMIZE_WINDOW_ANIMATION_TIME = 0.2;
 var SHOW_WINDOW_ANIMATION_TIME = 0.15;
@@ -42,21 +44,7 @@ var ONE_SECOND = 1000; // in ms
 const GSD_WACOM_BUS_NAME = 'org.gnome.SettingsDaemon.Wacom';
 const GSD_WACOM_OBJECT_PATH = '/org/gnome/SettingsDaemon/Wacom';
 
-const GsdWacomIface = `
-<node name="/org/gnome/SettingsDaemon/Wacom">
-<interface name="org.gnome.SettingsDaemon.Wacom">
-  <method name="SetGroupModeLED">
-    <arg name="device_path" direction="in" type="s"/>
-    <arg name="group" direction="in" type="u"/>
-    <arg name="mode" direction="in" type="u"/>
-  </method>
-  <method name="SetOLEDLabels">
-    <arg name="device_path" direction="in" type="s"/>
-    <arg name="labels" direction="in" type="as"/>
-  </method>
-  </interface>
-</node>`;
-
+const GsdWacomIface = loadInterfaceXML('org.gnome.SettingsDaemon.Wacom');
 const GsdWacomProxy = Gio.DBusProxy.makeProxyWrapper(GsdWacomIface);
 
 var DisplayChangeDialog = new Lang.Class({